x86/efi: Reserve SMBIOS table region when EFI booting
authorRoss Lagerwall <ross.lagerwall@citrix.com>
Fri, 17 Apr 2015 08:44:48 +0000 (10:44 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 17 Apr 2015 08:44:48 +0000 (10:44 +0200)
commitbf68adcadaa2b0885c5d2f1c8e2e068e209eb041
tree998a7abb38c3e931a1fbbe7c36d0f6edcebcb2b6
parentb1c5fba69714264b5585ae9183f2ff51dc6c187a
x86/efi: Reserve SMBIOS table region when EFI booting

Some EFI firmware implementations may place the SMBIOS table in RAM
marked as BootServicesData, which Xen does not consider as reserved.
When dom0 tries to access the SMBIOS, the region is not contained in the
initial P2M and it crashes with a page fault. To fix this, reserve the
SMBIOS region.

Also, fix the memcmp checks for existence of the SMBIOS.

Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
xen/arch/x86/dmi_scan.c